Facsimile data transmission over a low data rate network with fill bit removal and reinsertion

ABSTRACT

System and method for minimizing data bottlenecks in Low Data Rate Networks (LDRNs) that communicate facsimile transmissions. An LDRN is a facsimile network having a transmission data rate less than the data rate of the FAX machines serviced by the network. The system and method can be implemented in any type of LDRN, including analog and digital wired LDRNs, as well as analog and digital wireless (e.g., cellular) LDRNs. The system and method involve processing the facsimile transmissions in order to make the data rates of the LDRN and the FAX machines compatible, thereby minimizing any potential facsimile data bottlenecks that may occur in the LDRN due to its slower data rate.

This is a Divisional of application Ser. No. 08/152,157, filed Nov. 15,1993.

BACKGROUND OF INVENTION

1. Field of Invention

The present invention relates to facsimile data transmission. Moreparticularly, the present invention relates to a system and method forminimizing a data bottleneck that may arise during facsimile datatransmissions over networks operating at data rates lower than thefacsimile data rate.

2. Description of the Related Art

Facsimile (fax) machines have come into widespread use. In 1980, theInternational Telegraph and Telephone Consultative Committee (CCITT)adopted the Group 3 fax standard. The CCITT recommendations (standards)T.30 and T.4 define Group 3 facsimile service, also known as Group 3 FAXand G3 FAX. The recommendation is for "Group 3 facsimile apparatus."Group 3 facsimile apparatus includes fax machines, computers with faxmodems and appropriate software, as well as other products. As referredto herein, the term "FAX machine" applies to any Group 3 facsimileapparatus.

T.30 defines the messages used by Group 3 FAX machines to communicatewith one another. This communication includes fax call identification,fax parameter negotiation, training (to verify that higher data ratescan be used over a telephone connection), page transmittal, confirmationof reception, and call release. T.4 defines several ways to encodeimages on a page of a document to be transmitted by a facsimile network.

T.30 was written for facsimile service provided over a wired telephonenetwork, or a Public Switched Telephone Network (PSTN). In such anetwork, delays are fixed between transmission and reception during acall. Moreover, the data rates supported by the network are always asfast as the facsimile data rates sent over the network. In thisenvironment, T.30 requires strict time constraints between transmissionsand responses occurring between communicating FAX machines.

Such time constraints can be difficult to meet when Group 3 facsimiletransmissions are attempted over data channels with differentcharacteristics than a wired telephone network. For example, in thewireless environment (e.g., a cellular network), two conditions existthat do not arise during a wired telephone network fax transmission.First, the wireless environment has varying delays between transmissionand reception. Second, the data rates over a wireless network aretypically less than a wired network and may be less than the rate of faxdata transmissions.

When the data rate over the wireless network is less than the faxtransmission rate, a data bottleneck will occur between the transmittingFAX machine and the receiving FAX machine (i.e., at the transmissionside of the wireless network), causing delay in the fax transmission.Other, non-wireless facsimile networks may also have such a limited datarate and may thus incur data bottlenecks when performing facsimiletransmissions. The delays associated with such limited data ratenetworks can cause T.30 time-outs to expire, resulting in thetransmitting FAX machine hanging up during a facsimile call before datatransmission is complete. These data channels will be referred to as LowData Rate Networks (LDRNs), in which the data rates are lower than thefax transmission data rate.

In light of the foregoing, a need exists for an LDRN that can transmitfax data and at the same time minimize data bottlenecks that may arisein the LDRN during fax transmissions.

SUMMARY OF THE INVENTION

Accordingly, the present invention is directed to a system and methodfor minimizing a data bottleneck in an LDRN.

Additional features and advantages of the invention will be set forth inpart in the description that follows, and in part will be apparent fromthe description, or may be learned by practice of the invention. Theobjects and advantages of the invention will be realized and attained bythe system and method particularly pointed out in the writtendescription and claims in this application, as well in the appendeddrawings.

To achieve the advantages of the invention and in accordance with thepurpose of the invention, as embodied and broadly described herein, theinvention is a method for minimizing a data bottleneck in a Low DataRate Network (LDRN) having a data storage buffer. The method includestwo steps. First, a data stream is transmitted from a facsimile (FAX)machine to the LDRN, the data stream being divided into blocks, and theblocks being divided into frames. A number of bytes of the data streamare temporarily stored in the data storage buffer. Second, the LDRNrequests the FAX machine to re-transmit at least one of the frames, thenumber of frames to be re-transmitted being a function of the number ofbytes of the data stream stored in the data storage buffer.

In another aspect, the present invention is a method for minimizing adata bottleneck in an LDRN having a first side and a second side andhaving a one-dimensional image data format and a two-dimensional imagedata format. The method includes several steps. First, the LDRN sets afirst FAX machine to the one-dimensional image data format. Then, thefirst FAX machine sends to the first side of the LDRN, a data streamencoded in the one-dimensional image data format. The received datastream is subsequently uncompressed and re-encoded into thetwo-dimensional image data format. The first side of the LDRN thentransmits the re-encoded data stream to the second side of the LDRN,where it is again uncompressed and re-encoded into the one-dimensionalimage data format. Finally, the second side sends the re-encoded,one-dimensional data stream to a second FAX machine.

In yet another aspect, the present invention is a method for minimizinga data bottleneck in an LDRN having a first side and a second side, inwhich the data bottleneck has a quantity of bottlenecked data. A datastream encoded in an image data format is sent from a first FAX machineto the first side of the LDRN. The data stream is then uncompressed inthe first side, causing it to be converted into a bit mapped imagehaving image data. The bit mapped image is then processed such that theimage data is reduced by an amount of data equal to the quantity ofbottlenecked data. Next, the processed bit mapped data is imagecompressed and transmitted from the first side to the second side of theLDRN, where it is again uncompressed. The uncompressed data is thenreverse processed, thereby substantially recreating the original datastream. This data stream is re-encoded to the image data format and issent from the second side of the LDRN to a second FAX machine.

In still another aspect, the present invention is a method of minimizinga data bottleneck in an LDRN having a first side and a second side. Themethod includes two steps. First, a data stream is transmitted from aFAX machine to the first side of the LDRN, the data stream includingdata lines. Second, the transmitted data stream is processed in thefirst side of the LDRN, including dropping every N_(min) sent+INT(N_(drop-window) * R_(uniform) (0,1)) data line. In this equation,Nmin-sent corresponds to a minimum number of contiguous undropped datalines, N_(drop-window) corresponds to a window of droppable data lines,and R_(uniform) (0,1) is a function that outputs a uniformly distributedreal value between 0 and 1.

In another aspect, the present invention is a method for minimizing adam bottleneck in an LDRN having a first side and a second side andhaving a line length threshold (LLT). This method also includes twosteps. First, a data stream is transmitted from a FAX machine to thefirst side of the LDRN. The dam stream has lines of dam, each of thelines in turn having a line length. Second, in the first side of theLDRN, the transmitted data stream is processed, including dropping eachof the data lines for which the line length exceeds the LLT.

In still another aspect, the present invention is a method forminimizing a dam bottleneck in an LDRN having a first side and a secondside. The LDRN is coupled to a first FAX machine and a second FAXmachine, the first and second FAX machines being capable of negotiatinga value corresponding to a Minimum Scan Line Time (MSLT). Data isscanned and decoded into data lines using the first FAX machine. Thescanned and encoded data is then processed, including inserting fillbits into each of the data lines having a bit value less than the MSLTvalue, causing the bit value for all of the data lines to equal orexceed the MSLT value. The processed data is next transmitted from thefirst FAX machine to the first side of the LDRN, where it is againprocessed, including removing the fill bits from each of the filled datalines. This untilled dam is transmitted from the first to the secondside of the LDRN, where it is once again processed, includingreinserting the removed fill bits into their respective data lines.Finally, the refilled data is transmitted from the second side of theLDRN to the second FAX machine.

It is to be understood that both the foregoing general description andthe following derailed description are exemplary and explanatory onlyand are not restrictive of the invention, as claimed.

The accompanying drawings are included to provide a furtherunderstanding of the invention and are incorporated in and constitute apart of this specification, to illustrate embodiments of the invention,and, together with the description, to serve to explain the principlesof the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagrammatical representation of a wired PSTN facsimilenetwork.

FIG. 2 is a diagrammatical representation of a wired Low Data RateNetwork coupled to a PSTN.

FIG. 3 is a diagrammatical representation of a Low Data Rate Network forfacsimile transmission.

FIG. 4 is a flow-diagram illustrating the steps involved in a method forminimizing data bottlenecks in accordance with the present invention.

FIG. 5 is a flow-diagram illustrating the steps involved in anothermethod for minimizing data bottlenecks in accordance with the presentinvention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

Reference will now be made in detail to the present preferredembodiments of the invention, examples of which are illustrated in theaccompanying drawings. Wherever possible, the same reference numberswill be used throughout the drawings to refer to the same or like parts.A basic facsimile transmission includes several steps. The first step iscalled setup, during which a calling FAX machine dials the telephonenumber of a called FAX machine. The called FAX machine answers the ringsignal initiated by the calling FAX machine by going off-hook, therebywaking up the rest of the called FAX machine.

The next step is a pre-message procedure. Here, the called FAX machinefirst sends a digital identification signal to the calling FAX machineidentifying the called FAX machine's capabilities. In response, thecalling FAX machine automatically sends a digital command signaldescribing to the called FAX machine the fax parameters that will beused for this facsimile transmission. The calling FAX machine uses itsown capabilities and those of the called FAX machine to determine theseparameters (i.e., uses the highest common set of facsimile parameters).These parameters include the speed of transmission of page data, theencoding format for the image data, whether standard features such aserror correction will be used, as well as non-standard facilities thatmay be used by particular facsimile machine manufacturers. The callingFAX machine also trains with the called FAX machine to verify that thehighest available transmission speed will work. If not, the machinesslow down until they find the fastest speed that does pass training.

The final three steps are message transmission, post-message procedure,and call release. Following the pre-message procedure is messagetransmission, during which the calling FAX machine transmits to thecalled FAX machine a data stream corresponding to information containedon a document page. The called FAX machine, in turn, confirms receptionof each page. Following message transmission is post-message procedure,which occurs after each page has been sent. During this step, thecalling FAX machine sends a signal to the called FAX machine indicatingthat transmission of a page is complete and whether other pages arestill to be sent, and in response the called FAX machine sends a messageconfirmation signal indicating the page was successfully received. Callrelease occurs after all pages of the document have been transmitted bythe calling FAX machine. In this step, the calling FAX machine sends adisconnect signal, and both FAX machines disconnect from the telephoneline and terminate communication with one another.

FIG. 1 illustrates a typical, hard-wired facsimile network 10 operatingover a Public Switched Telephone Network (PSTN). A first (or calling)FAX machine 12 is connected over the PSTN 14 to a second (or called) FAXmachine 16. The two FAX machines 12, 16 communicate with one another, asdescribed above, by means of analog signals sent over the PSTN 14. Thesignals are considered analog, even though many parts of a PSTN may bedigital. In this PSTN facsimile network 10, the data rates supported bythe network are always as fast as the facsimile data rates to be sentover the network. Accordingly, data bottlenecks do not occur during faxtransmissions made over such PSTN facsimile networks.

A wired network, however, may also incorporate a Low Data Rate Network(LDRN). As illustrated in FIG. 2, an LDRN 22 may be used in combinationwith a PSTN 14, creating an LDRN/PSTN network 20. In the wired PSTN/LDRNnetwork 20, a first (or calling) FAX machine 12 and a second (or called)FAX machine 16 are connected over the PSTN 14 and the LDRN 22. The twoFAX machines send and receive analog signals via the PSTN 14 and LDRN22, although the LDRN 22 can be either analog or digital, a digital LDRNrequiring circuitry to convert the transmitted signals from analog todigital and vice versa. When the calling FAX machine 12 is transmitting,data will arrive at the LDRN 22 at a fax transmission (or data) rate.This data then leaves the LDRN at a slower rate to be transmitted acrossthe LDRN. This results in data collecting at the side of the LDRNreceiving the data from the calling FAX machine. Such data collectioncontinues until the calling FAX machine 12 finishes transmitting data,after which the data build-up (or bottleneck) diminishes in the LDRN 22until all of the data is transmitted across the LDRN. During this time,the calling FAX machine 12 waits for a confirmation signal from thecalled FAX machine. If the bottleneck causes too much delay, the callingFAX machine will hang up before the confirmation signal is sent.

In a wireless environment, an analog wireless network or digitalwireless network may be used, each of which has a first and a secondside for transmission and reception of fax data. When implementing faxtransmission and reception over a digital wireless network, an exampleof which is shown in FIG. 3, the network 30 must demodulate the analogfax transmission on each side, send it across the network in digitalform, and then modulate it back into an analog signal on the other sideof the network. Each side of the digital wireless network can beequipped with a FAX modem 32, 36, which performs these functions withinthe network 30. Modem is short for MOdulator/DEModulator.

As with the PSTN/LDRN network 20, when a digital or analog wirelessnetwork operates at a data rate less than that of a fax transmission(that is, the network is an LDRN), a bottleneck will occur at the inputside of the network. Because the data rate in the wireless LDRN is lowerthan the facsimile transmission data rate, data bottlenecks will ariseand escalate during fax data transmissions. As in the LDRN/PSTN network20, these bottlenecks may become so large in an analog or digitalwireless network as to cause the calling FAX machine to terminate thecall before it has completed its data transmission.

Accordingly, in any LDRN fax network, data bottlenecks can occur. Suchbottlenecks impede the flow of data across the network and can bedisastrous if they become large enough to cause fax transmissions toprematurely terminate.

Therefore, in accordance with the present invention, a system and methodare provided for minimizing data bottlenecks in a facsimile LDRN. Theremainder of this description explains methods and system for databottleneck minimization as embodied in a digital wireless network havingan LDRN, such as that shown in FIG. 3. These methods can be likewiseimplemented in an analog wireless network or the PSTN/LDRN network 20,whether analog or digital. An exemplary embodiment of the digital LDRNsystem of the present invention is shown in FIG. 3 and is designatedgenerally by reference numeral 30.

Referring to FIG. 3, the system for minimizing a data bottleneck in adigital LDRN includes a first FAX machine 12, a first FAX modem 32, adigital LDRN 34, a second FAX modem 36, and a second FAX machine 16. Thefirst FAX machine 12 and the first FAX modem 32 can be coupled to oneanother through a wired telephone network, as can be the second FAXmachine 16 and the second FAX modem 36. Both FAX modems 32, 36 are, inturn, coupled to the digital LDRN 34. Preferably, the FAX modems areincluded within the LDRN 34. The details of this system are describedbelow.

In this system, the first FAX machine 12 and the second FAX machine 16are conventional facsimile machines, preferably Group 3 FAX machines, asdefined under the standards of the International Telegraph and TelephoneConsultative Committee (CCITT). Alternatively, the system of the presentinvention could be implemented using Group 1, Group 2, or Group 4 FAXmachines. To so implement the system, the methods described herein wouldhave to be altered to the extent necessary to account for the differentCCITT recommendations or standards (e.g., T.2, T.3, or T.6) for thoseFAX machine groups.

The first FAX machine 12 and the second FAX machine 16 are both capableof transmission and reception. Accordingly, both FAX machines arecapable of sending as well as receiving analog signals. Because Group 3fax machines are compatible with standard telephone lines, i.e., a PSTN,the first and second FAX machines 12, 16 can be installed merely byplugging them into a telephone jack. If a PSTN is not used, a privatevoice or digital channel is needed.

As shown in FIG. 3, the first and second FAX machines 12, 16 areconnected over standard telephone lines (PSTN) to the first and secondFAX modems 32, 36, thereby enabling the FAX machines to send and receiveanalog signals to and from the FAX modems. The first FAX modem 32 andthe second FAX modem 36 are used to demodulate the analog facsimiletransmissions being sent by the FAX machines 12, 16. In this way, bothFAX modems convert the analog facsimile transmissions into digital form.In addition, both FAX modems 32, 36 are used to modulate the digitalfacsimile signals transmitted over the digital LDRN 34, converting thosedigital signals back into analog facsimile signals for transmission tothe FAX machines 12, 16.

As noted above, the first FAX modem 32 and the second FAX modem 36 arepreferably located within the LDRN 34. Alternatively, the FAX modemscould be located, for example, at the same location having the FAXmachines 12, 16, or anywhere else between the FAX machines and the LDRN34. In either of these latter implementations, a private digital channelis needed for communication between the LDRN 34 and the FAX modems 32,36.

For the remainder of this description, the digital LDRN 34 will bereferred to as having a first side and a second side, the two sidesbeing in communication with one another over the LDRN. Forsimplification, the first side will be referred to as including thefirst FAX modem 32 and other circuitry and software contained within thedigital LDRN 34. Similarly, the second side will be referred to asincluding the second FAX modem 36 as well as other circuitry andsoftware contained within the LDRN 34. As will be apparent to thoseskilled in the art, additional FAX modems and FAX machines can becoupled to the LDRN, which is capable of simultaneously transmittingmany digitized facsimile signals.

In accordance with the present invention, a method and systemincorporating the Error Correction Mode (ECM) defined in CCITT T.30 andT.4 can be used to minimize a data bottleneck in the digital LDRN 34.The ECM is part of T.30 (i.e., it is standard in the T.30Recommendation), but is an optional feature on a Group 3 FAX machine.This means that FAX machine manufacturers need not implement ECM to beGroup 3 compliant. Nevertheless, if ECM is used during a fax call (i.e.,both machines have the capability and negotiate to use it), ECM can beused by the LDRN 34 to keep a fax call from being prematurelyterminated, i.e., timing out, due to a data bottleneck.

One way to reduce the data bottleneck using ECM is to use the flowcontrol mechanism designed into ECM. This mechanism allows the calledFAX machine (either the first FAX machine 12 or the second FAX machine16) to hold-off the calling FAX machine (again, either the first orsecond FAX machine 12, 16) for a period of time. This is part of theT.30 standard.

Alternatively, ECM may be used in conjunction with a retransmissionfunction to minimize data bottlenecks. In the ECM, data contained on adocument page to be transmitted from one FAX machine to another isdivided into blocks. Each block is further divided into a number offlames. There can be 256 or 64 flames per block (negotiable between theFAX machines) and up to 256 blocks per page. Between transmission ofeach block of data, the called FAX machine can request the calling FAXmachine to re-transmit flames within the current block. The called FAXmachine can do this up to four times per block. In normal operation,such retransmission requests are only performed when a block is receivedwith errors, or where the block is completely missed by the called FAXmachine.

This retransmission function, however, can be used by the LDRN 34 todelay the calling FAX machine while the LDRN 34 sends data over theLDRN. In such a method, a data stream corresponding to the datacontained on the document page is transmitted in analog form from thefirst FAX machine 12 to the first FAX modem 32 (i.e., the first side ofthe LDRN 34), where the data stream is converted into digital form. Whenthe data rate from the first FAX machine 12 is greater than the datarate of the LDRN 34, some of the data in the data stream will accumulatein some type of memory device (e.g., a data transmit buffer) included inthe first side of the LDRN 34.

In order to prevent such data accumulation, the digital LDRN 34 can beused to keep the first FAX machine 12 busy by requesting it tore-transmit data flames that were received correctly by the LDRN. Theparticular frames the LDRN 34 requests to be re-transmitted isarbitrary. The number of frames requested for retransmission can becalculated using an algorithm that minimizes the bottleneck effect whenthe LDRN 34 operates at a slower data rate than the facsimiletransmission. The following formula is used to minimize the bottleneckeffect:

    (1) N.sub.RETX-Frames =INT[(T.sub.overhead +(L.sub.Bottleneck /R.sub.fax))/(L.sub.frame /R .sub.LDRN)].

In equation (1), N_(RETX-Frames) corresponds to the number of framesthat the LDRN 34 will request the calling FAX machine to re-transmit.INT indicates that the number of re-transmit frames is an integer value,rather than a fractional value. In addition, T_(overhead) is a fixedvalue determined empirically, accounting for the time it takes torequest retransmission, for the time needed by the FAX machine to setupfor the retransmission, and the time to transmit the confirmation signalfor the requested retransmission. T_(overhead) does not include,however, the time required to actually re-transmit the requested frames.L_(Bottleneck) corresponds to the amount of data stored in theLDRN/modem data transmit buffer still to be sent over the LDRN 34, andR_(fax) corresponds to the data rate of the facsimile transmission.L_(frame) is the amount of data in a single fax data frame, and R_(LDRN)is the data rate of the digital LDRN 34.

The goal is to have the transmitting fax machine begin transmitting anew block of data just as the bottleneck empties at the LDRN 34. Thiswould minimize the delay created by having an LDRN data rate less thanthe fax transmission data rate.

The calculation in equation (1) is performed and thus retransmission ofdata frames requested, however, only upon satisfaction of an initialcondition. Namely, the number of re-transmit data frames to allow theLDRN 34 to empty its data buffer (N_(Bottleneck)) must be greater than afixed integer value (N_(min)). This prevents unnecessary retransmissionof data frames (i.e., when the bottleneck effect is not substantialenough to warrant retransmission). N_(Bottleneck) is calculated asfollows: ##EQU1## where L_(Bottleneck), R_(fax), L_(frame), and R_(LDRN)are the same variables as those described with respect to equation (1).

Referring now to FIG. 4, a flow-diagram is provided illustrating the ECMretransmission method. The process begins in step 42, at which point ablock of data from a page of the document being transmitted by the firstFAX machine 12 is received in the first side of the LDRN 34. Using thisblock of data, the next step 43 is to calculate N_(Bottleneck) usingequation (2). Upon performing this calculation, the next step 44involves comparing N_(Bottleneck) to N_(min). If N_(Bottleneck) isgreater than N_(min), as show in step 45, N_(RETX-frames) is calculatedusing equation (1), and a send confirmation signal is sent from thefirst side of the LDRN 34 to the first FAX machine 12, requesting thatthe first FAX machine re-transmit the N_(RETX-frames). The particulardata frames that the LDRN requests to be re-transmitted is arbitrary;only the number of frames, i.e., N_(RETX-frames), is significant.

On the other hand, if in step 44 N_(Bottleneck) is less than N_(min),retransmission of data frames will not be requested by the LDRN 34.Rather, as shown in step 46, the LDRN will send a confirmation signal tothe first FAX machine 12 without a retransmission request, and theprocedure will be repeated with the next block received.

As will be apparent to those skilled in the art, the methods forminimizing data bottlenecks using the ECM can be implemented withcircuitry included in the LDRN 34, the FAX modems 32, 36, or both.Preferably, the circuitry will use LSI and/or VLSI components.Alternatively, the method can be implemented with software, or somecombination of software and circuitry.

A second embodiment of the present invention involves employingcompression methods to increase the rate at which data is transmitted byan LDRN to minimize data bottlenecks in the LDRN. As with the ECMmethods, the compression methods can be implemented with hardware,software, or a combination of the two.

The T.4 recommendation or standard includes different encoding formats.As part of the facsimile negotiation between two communicating facsimilemachines, this encoding format is set to either one-dimensional ortwo-dimensional (1-D or 2-D). Referring again to FIG. 3, in thecompression scheme, the digital LDRN 34 forces the FAX machines 12, 16to use the 1-D format, while the LDRN 34 uses the more efficient 2-Dformat to transmit a stream of data from one side of the LDRN to theother side. Now in the 1-D mode, the first FAX machine 12, for example,can send a data stream encoded in the 1-D image data format to the firstside of the digital LDRN 34. Once received at the first side, the datastream is digitized and uncompressed. The LDRN then re-encodes theuncompressed data stream into the 2-D image data format and transmitsthe re-encoded data stream from the first side over-the-air to thesecond side of the LDRN 34. Once received at the second side, thetransmitted data stream is again uncompressed, is re-encoded back intothe 1-D image data format, and is converted back into analog form. Thesecond side of the LDRN 34 then sends the re-encoded analog data streamto the second FAX machine 16. The second FAX machine 16 decodes the datastream and outputs it in a format readable by a user.

Alternatively, the compression method can be implemented using imageprocessing, in which a non-standard image data format (or imageencoding) is used over the digital LDRN 34. In this alternativecompression scheme, the first FAX machine 12 sends a data stream encodedin a standard image data format (1-D or 2-D) to the first side of theLDRN 34. The first side decompressed and digitizes the data stream,converting it into a bit mapped image having image data. This bit mappedimage is then processed, thereby reducing the amount of image data. Theamount of reduction should correspond to the difference in the fax datatransmission rate and the LDRN data rate. Such image processing mayinvolve remapping the image into fewer pixels (i.e., an image havingreduced resolution). No matter the image processing scheme used, theamount of image data will be less than the original amount sent from thefirst FAX machine 12 by an amount accounting for the data bottleneck atthe first side of the digital LDRN 34.

The processed bit mapped data is then compressed and transmitted fromthe first side of the LDRN 34 to the second side of the LDRN. At thesecond side, the transmitted data is uncompressed and reverse processed,whereby in the second side of the LDRN, the uncompressed bit mapped datais re-encoded into the original T.4 image data format (1-D or 2-D). Inthis way, the original stream of data sent from the first FAX machine 12is substantially recreated. This recreated data is converted back intoanalog form and sent from the second side of the LDRN 34 to the secondFAX machine 16.

In a third embodiment of the present invention, lines of facsimile imagedata are dropped, such that the dropped data lines are not sent from thefirst to the second side of an LDRN thereby minimizing data bottlenecks.In this method, a short indication signal is sent, for example, from thefirst side to the second side of the LDRN 34, indicating that a line ofdata was dropped. On the second side, the LDRN inserts a data line toreplace and/or replicate the dropped data line. The inserted line can bea repeat of the data line preceding the dropped line, or can be a linethat is created by performing an image processing function on theprevious N lines, N being some predetermined number. As with the ECM andcompression methods, this method can also be implemented with hardware,software, or a combination of the two.

Various algorithms can be selected for deciding which lines of data todrop. First, every N^(th) line could be dropped. In this case, a datastream would be transmitted from the first FAX machine 12 to the firstside of the LDRN 34, the data stream comprising several data lines. Oncereceived in the first side, the data stream would be processed and everyN^(th) line dropped.

Second, a flexible equation can be used to determine how many contiguousdata lines are to be transmitted before dropping the next line. Here,the data stream can be transmitted from the first FAX machine 12 to thefirst side of the LDRN 34, the data stream again comprising data lines.Once received at the first side of the LDRN, the data stream isprocessed, including determining the contiguous data lines,N_(contiguous), to be transmitted between dropped lines, N_(contiguous)being calculated according to the following equation:

    (3) N.sub.contiguous =N.sub.min-sent +INT[(N.sub.drop-window * R.sub.uniform (0,1)].

In equation (3), N_(min-sent) corresponds to a minimum number ofcontiguous undropped data lines, N_(drop-window) corresponds to a windowof droppable data lines, and R_(uniform) (0,1) is a function thatoutputs uniformly distributed real values between 0 and 1.

N_(min-sent) and N_(drop-window) are chosen such that, on average, thedata bottleneck at the LDRN 34 is minimized. These values must also beselected to minimize the impact on the quality of the fax data image. Inorder to satisfy these requirements, separate values can be selected forpairs of (N_(min-sent), N_(drop-window)) corresponding to differentfacsimile image encoding formats, different LDRN data rates, anddifferent fax transmission data rates. A lookup table can be employedfor each of the (N_(min-sent), N_(drop-window)) pairs in order toimplement selection of such values.

No matter which algorithm is employed, once processed, the data streamis transmitted from the first side of LDRN 34 to the second side alongwith the indicator signals. As noted above, each indicator signalcorresponds to a dropped data line. In the second side of the LDRN 34, anew data line will be inserted for each of the dropped lines, asdescribed above.

Referring now to FIG. 5, a flow-diagram is provided depicting the use ofequation (3) to determine which data lines to drop. As shown in step 51,a counter, N_(sent), is initially set to zero, for which N_(min-sent)represents a minimum threshold of contiguous undropped data lines thatmust be met before a line can be dropped. Also in step 51,N_(contiguous) is calculated per equation (3). After completing step 51,a data line is received in the first side of the LDRN 34 from thetransmitting FAX machine, as depicted in step 52. Next, N_(sent) isincremented in step 53, after which N_(sent) is compared toN_(contiguous) in step 54.

According to step 54, if N_(sent) equals N_(contiguous), the currentlyreceived data line is dropped, and an indicator signal is generatedindicating that a data line was dropped from the LDRN data transmitbuffer, as shown in step 55. If, however, N_(sent) does not equalN_(contiguous), the currently received data line is stored into the LDRNdata transmit buffer, indicated by step 56. Following execution of step55, step 51 is repeated, resulting in N_(sent) being reset to zero andN_(contiguous) being recalculated. Following execution of Step 56,however, the loop is continued, returning to step 52 and repeating thatstep as well as steps 53 and 54.

Alternatively, a data bottleneck in the LDRN 34 can be minimized bydropping data lines based on the current depth of the data bottleneckand the length of the incoming data lines. By dropping the longest datalines, the benefit of dropping data lines is maximized. In accordancewith this method, a Line Length Threshold (L_(min)) will be established,such that when the length of a data line exceeds L_(min), the data linewill be dropped in the LDRN. Referring again to FIG. 3, in this method,a data stream is transmitted from the first FAX machine 12 to the firstside of the digital LDRN 34. The data stream, corresponding to imagedata being scanned from a document page by the first FAX machine 12, hasa number of data lines, each of which has a line length (i.e., an amountof data corresponding to the number of data bits contained in each dataline). Once received by the first side of the LDRN 34, the data streamis processed, including dropping each of the data lines for which theline length exceeds L_(min).

The algorithm in the LDRN 34 setting L_(min) can be fixed or dynamic.Where L_(min) is fixed, in the first side of the LDRN each of theincoming data lines are compared to the fixed L_(min) value, and anydata lines exceeding L_(min) are discarded. The value corresponding tothe fixed L_(min) differs for different facsimile data rates anddifferent LDRN data rates. Values corresponding to such a differingL_(min) can be implemented in an L_(min) lookup table.

In a dynamic system, L_(min) will vary based on the current depth of thedata bottleneck data transmit buffer in the first side of the LDRN 34.To calculate dynamic L_(min), an algorithm is used. This algorithmemploys the amount of data, L_(bottleneck), stored in the data transmitbuffer, such that L_(min) is a decreasing function of L_(Bottleneck)(i.e., L_(min) decreases as L_(Bottleneck) increases), and thus morelines get dropped as the bottleneck grows. Accordingly, as the LDRN getsfarther and farther behind in its data transmission, L_(min) willdecrease, resulting in shorter and shorter data lines being dropped.Conversely, as the LDRN data bottleneck becomes smaller, L_(min) willincrease, causing only longer data lines to be dropped.

After being processed, the data stream, minus the dropped lines, istransmitted from the first side to the second side of the LDRN 34. Alongwith the processed data, short indicator signals will be transmitted,each of which corresponds to and indicates a dropped data line. Oncereceived at the second side of the digital LDRN 34, the second side willinsert a data line for each of the dropped data lines. Determination ofwhen and whether to insert the data line follows from the transmittedindicator signals. As discussed above, the inserted line can be a repeatof the last data line preceding the dropped data line, or the secondside of the LDRN can create a data line to insert by performing imageprocessing on N data lines preceding the dropped data line.

In a fourth embodiment of the present invention, another method forminimizing data bottlenecks in an LDRN involves dropping fill bits inone side of the LDRN and reinserting them in the other. Two FAX machinescommunicating with each other are capable of negotiating a valuecorresponding to a Minimum Scan Line Time (MSLT). The MSLT is aconventional feature of T.30, compensating for slower paperfeeding/scanning mechanisms within FAX machines. When a data lineencodes into only a few bits (e.g., a blank line), the transmission timefor these bits can be less than the MSLT. In the event this occurs, thetransmitting FAX machine inserts fill bits at the end of the data linecausing the transmit time for that data line to be at least as long asthe MSLT.

In this fill bit method, the MSLT can be used to minimize the databottleneck in an LDRN. Referring again to FIG. 3, the first and secondFAX machines 12, 16 first negotiate a value corresponding to the MSLT.The transmitting machine (e.g., the first FAX machine 12) then scans andencodes the image data appearing on a document page into data lines.Next, the first FAX machine 12 processes the scanned and encoded data,including inserting fill bits into each of the data lines in which thenumber of bits is less than that value corresponding to the MSLT value.Such processing causes the transmission time for each of the encodeddata lines to equal or exceed the MSLT. The processed data is thentransmitted to the first side of the LDRN 34, where it is againprocessed. In this second processing step, all of the fill bits areremoved from the filled data lines.

The data, minus the fill bits, is then sent from the first side of theLDRN 34 to the second side of the LDRN. There, the data is processed athird time, including reinserting the removed fill bits into theircorresponding data lines. When and whether the second side of the LDRN34 will insert fill bits into a data line is determined according to thefollowing equation:

    (4) T.sub.line =L.sub.fax,

where T_(line) equals the transmit time for the fax data line, L_(line)equals the amount of data in the fax data line, and R_(fax) equals thefacsimile transmission data rate. For each data line, if T_(line) <MSLT,fill bits are inserted by the second side of the LDRN 34 before the endof the data line, thus increasing L_(line) and T_(line) until T_(line)is greater than or equal to the MSLT.

Accordingly, the data lines will have reattained their filled status asthey were transmitted from the first FAX machine 12 to the first side ofLDRN 34. These newly filled data lines, as well as the rest of thescanned image data, is then sent from the second side of the LDRN to thesecond FAX machine 16. In this way, none of the fill bits is sent overthe LDRN, thus saving time in transmitting the facsimile image. As withthe other embodiments described herein, this fill bit method can beimplemented in the LDRN 34 and/or FAX modems 32, 36 using hardware,software, or some combination of the two.

Those skilled in the art will recognize that the methods and apparatusdescribed herein can be implemented on a variety of facsimile networks.Such networks would include not only digital wireless networks, but alsoanalog wireless networks. Indeed, the methods and apparatus describedherein can be implemented in any LDRN over which facsimile images aretransmitted and in which data bottlenecks can occur during suchtransmissions.

Accordingly, it will be apparent to those skilled in the art thatvarious modifications and variations can be made in the apparatus andprocess of the present invention without departing from the spirit orscope of the invention. Thus, it is intended that the present inventioncovers the modifications and variations of this invention, provided theycome within the scope of the appended claims and their equivalents.

What is claimed is:
 1. A method for minimizing a data bottleneck in aLow Data Rate Network (LDRN), said LDRN having a first side and a secondside, said LDRN being coupled to a first facsimile (FAX) machine and asecond FAX machine, said first and second FAX machines being capable ofnegotiating a value corresponding to a Minimum Scan Line Time (MSLT),said method comprising:scanning and encoding a data stream into aplurality of data lines using said first FAX machine; processing saidscanned and encoded data stream, including inserting at least one fillbit into each of said plurality of data lines having a bit value(L_(line)) less than said MSLT value, whereby said bit value for each ofsaid plurality of data lines of said processed data equals or exceedssaid MSLT value; transmitting said processed data from said first FAXmachine to said first side of said LDRN at a fax transmission data rateR_(fax) ; second processing said transmitted data, including removingfrom each of said inserted data lines said at least one fill bit; secondtransmitting said second processed data from said first to said secondside of said LDRN; third processing said second transmitted data,including reinserting into each of said data lines said at least onefill bit; and third transmitting said third processed data from saidsecond side of said LDRN to said second FAX machine.
 2. The methodrecited in claim 1, further comprising determining whether to performthe third processing step, the determining step including the followingsubsets:calculating, for each of the second transmitted data lines, atransmit time (T_(line)) according to the following equation:

    T.sub.line =L.sub.line /R.sub.fax,

wherein R_(fax) is said fax transmission data rate; comparing, for eachof the second transmitted data lines, T_(line) to MSLT; and if T_(line)is less than MSLT, performing the third processing step.